package com.example.consumptionrecords.service.interfaces;


import com.example.consumptionrecords.entity.dto.ConRecordsDTO;
import com.example.consumptionrecords.entity.vo.ConRecordsStatisticsVO;
import com.example.consumptionrecords.entity.pojo.*;
import com.example.consumptionrecords.entity.vo.HomeCardVO;

import java.util.List;

/**
 * SunJingxuan
 * 2022 \ 07 \ 29
 */

public interface HomeService {

	/**
	 * 首页卡片
	 * @param userId 用户id
	 * @return 请求成功返回数据，请求失败返回空集合
	 */
	List<HomeCardVO> getCard(Integer userId);

	/**
	 * 消费记录统计
	 * @param dateType 时间类型
	 * @param userId 用户id
	 * @return 请求成功返回数据，请求失败返回空集合
	 */
	List<ConRecordsStatisticsVO> selectConRecordsStatistics(Integer dateType, Integer userId);

	/**
	 * 消费渠道
	 * @return 请求成功返回数据，请求失败返回空集合
	 */
	List<ConPayChannel> selectConPayChannel();

	/**
	 * 消费平台
	 * @return 请求成功返回数据，请求失败返回空集合
	 */
	List<ConPlatform> selectConPlatform();

	/**
	 * 消费类型
	 * @return 请求成功返回数据，请求失败返回空集合
	 */
	List<ConType> selectConType();

	/**
	 * 插入消费记录
	 * @param conRecordsDTO 消费记录实体类
	 * @param userId 用户id
	 */
	void insertConRecords(ConRecordsDTO conRecordsDTO, Integer userId);
}